Ответы пользователя
Когда вы хотите предоставить игроку выбор того, что сказать, используйте ответы. Ответы позволяют показать несколько возможных реплик, из которых игрок может выбрать одну.
Ответы отмечаются символом ->
. Вы можете создать столько ответов, сколько нужно, и игрок выберет один. Ответы не поддерживают перенос строк и теги форматирования.
Из-за ограничений телеграм ответ не может быть длиннее 127 символов.
Например, рассмотрим следующий код:
Что ты хочешь делать дальше?
-> Я хочу пойти плавать.
-> Я предпочитаю поход.
В этом примере сначала появится сообщение "Что ты хочешь делать дальше?", а затем игроку будут предложены два варианта: "Я хочу пойти плавать" и "Я предпочитаю поход". Игрок может выбрать один из них.
Ответы с сообщениями
Варианты могут запускать последующие сообщения. К огда игрок выбирает вариант, выполняются связанные с ним строки, которые идут под ним с отступом в 4 пробела.
В следующем примере появятся разные строки в зависимости от выбранного варианта:
Что ты хочешь делать дальше?
-> Я хочу пойти плавать.
Отлично, пойдём на бассейн.
-> Я предпочитаю поход.
Круто, отправляемся в поход.
Звучит здорово!
Здесь игрок выбирает между "Я хочу пойти плавать" и "Я предпочитаю поход". Если выбрано плавание, появляется строка "Отлично, пойдём на бассейн". Если поход — строка "Круто, отправляемся в поход". Независимо от выбора, последним появится сообщение "Звучит здорово!".
Вложенные ответы
Вы также можете вкладывать сообщения с ответами внутри других ответов, создавая более сложные диалоговые деревья.
Что ты хочешь делать дальше?
-> Я хочу пойти плавать.
Где ты хочешь плавать?
-> На озере!
Отличный выбор!
-> В бассейне!
Звучит весело, там новый аттракцион!
-> Я предпочитаю поход.
Круто, отправляемся в поход.
Звучит здорово!
В этом примере сначала игрок выбирает занятие, а затем уточняет, где именно хочет плавать, если выбрано плавание. В зависимости от выбора появляются разные строки.
Хотя вложенные варианты очень полезны, они могут усложнить чтение вашего скрипта. Часто удобнее использовать команду <<jump>>
, чтобы переместиться в другую ноду и поддерживать порядок в скрипте.
Иногда варианты могут зависеть от действий игрока или ранее сказанных реплик. Для этого требуется использовать условия и переменные, о чём мы расскажем дальше.